package com.protocols.sctp.m3ua.sccp.tcap.camel;

import java.io.Serializable;

import com.protocols.BCDNumber;
import com.protocols.OctaveInteger;
import com.protocols.ProtoOperations;
import com.protocols.ProtocolStackException;
import com.protocols.sctp.m3ua.sccp.tcap.TcapBegin;
import com.protocols.sctp.m3ua.sccp.tcap.TcapConstructor;
import com.protocols.sctp.m3ua.sccp.tcap.TcapPrimitiveUnitByteArray;
import com.protocols.sctp.m3ua.sccp.tcap.TcapPrimitiveUnitNumber;

public class CamelRequestReportBCSMEvent extends CamelInvoke implements Serializable{
	
	private TcapConstructor Parameters = new TcapConstructor(0x30);
	private TcapConstructor BCSMEventsContainer = new TcapConstructor(0xa0);
	public BCSMEvent BCSMEvent1 = new BCSMEvent();
	public BCSMEvent BCSMEvent2 = new BCSMEvent();
	public BCSMEvent BCSMEvent3 = new BCSMEvent();
	public BCSMEvent BCSMEvent4 = new BCSMEvent();
	public BCSMEvent BCSMEvent5 = new BCSMEvent();
	public BCSMEvent BCSMEvent6 = new BCSMEvent();
	public BCSMEvent BCSMEvent7 = new BCSMEvent();
	public BCSMEvent BCSMEvent8 = new BCSMEvent();
	public BCSMEvent BCSMEvent9 = new BCSMEvent();
	public BCSMEvent BCSMEvent10 = new BCSMEvent();
	private TcapPrimitiveUnitByteArray Extensions = new TcapPrimitiveUnitByteArray(0xa2);
	
	// Sending Side is All Ways the IN
	// Receiving Side is All Ways the the MSC
	//Leg ID1 = Originator
	//Leg ID2 = Terminating Party
	
	
	public CamelRequestReportBCSMEvent() {
		super();	
		super.Invoke.addElement(Parameters);
		Parameters.addElement(BCSMEventsContainer);
		BCSMEventsContainer.addElement(BCSMEvent1.getRootComponent());
		BCSMEventsContainer.addElement(BCSMEvent2.getRootComponent());
		BCSMEventsContainer.addElement(BCSMEvent3.getRootComponent());
		BCSMEventsContainer.addElement(BCSMEvent4.getRootComponent());
		BCSMEventsContainer.addElement(BCSMEvent5.getRootComponent());
		BCSMEventsContainer.addElement(BCSMEvent6.getRootComponent());
		BCSMEventsContainer.addElement(BCSMEvent7.getRootComponent());
		BCSMEventsContainer.addElement(BCSMEvent8.getRootComponent());
		BCSMEventsContainer.addElement(BCSMEvent9.getRootComponent());
		BCSMEventsContainer.addElement(BCSMEvent10.getRootComponent());
		Parameters.addElement(Extensions);
		setOpCode(23,true);	// RequestReportBCSMEvent
		
	}
	
	public TcapConstructor getRootComponent(){
		return Invoke;
	}
	
	
	

	
}
